﻿<UserControl x:Class="EffectEd.CompilerSettingsControl"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
             xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
             mc:Ignorable="d" 
             d:DesignHeight="330" d:DesignWidth="400">
    <Grid Height="330">
        <Label Content="Direct 3D version:" Height="28" HorizontalAlignment="Left" Name="label1" VerticalAlignment="Top" Margin="0,-3,0,0" />
        <ComboBox Height="23" HorizontalAlignment="Left" Margin="109,2,0,0" Name="comboBox1" VerticalAlignment="Top" Width="104" SelectionChanged="comboBox1_SelectionChanged" />
        <Label Content="Profile:" Height="28" HorizontalAlignment="Left" Margin="228,-3,0,0" Name="label2" VerticalAlignment="Top" />
        <ComboBox Height="23" HorizontalAlignment="Left" Margin="280,0,0,0" Name="comboBox2" VerticalAlignment="Top" Width="108" />
        <Label Content="Entrypoint:" Height="28" HorizontalAlignment="Left" Margin="-1,32,0,0" Name="label3" VerticalAlignment="Top" />
        <TextBox Height="23" HorizontalAlignment="Left" Margin="109,34,0,0" Name="textBox1" VerticalAlignment="Top" Width="103" />
        <Label Content="Shader flags:" Height="28" HorizontalAlignment="Left" Margin="0,68,0,0" Name="label4" VerticalAlignment="Top" />
        
        <CheckBox Content="Avoid flow control" Height="16" HorizontalAlignment="Left" Margin="79,75,0,0" Name="checkBoxAvoidFlowControl" VerticalAlignment="Top" />
        <CheckBox Content="Debug" Height="16" HorizontalAlignment="Left" Margin="245,172,0,0" Name="checkBoxDebug" VerticalAlignment="Top" />
        <CheckBox Content="Backwards compatibility" Height="16" HorizontalAlignment="Left" Margin="79,90,0,0" Name="checkBoxEnableBackwardsCompatibility" VerticalAlignment="Top" />
        <CheckBox Content="IEEE strictness" Height="16" HorizontalAlignment="Left" Margin="79,105,0,0" Name="checkBoxEnableIEEEStrictness" VerticalAlignment="Top" />
        <CheckBox Content="Strictness" Height="16" HorizontalAlignment="Left" Margin="79,120,0,0" Name="checkBoxEnableStrictness" VerticalAlignment="Top" />
        <CheckBox Content="Software PixelShader" Height="16" HorizontalAlignment="Left" Margin="79,135,0,0" Name="checkBoxForceSoftwarePixelShader" VerticalAlignment="Top" />
        <CheckBox Content="Software VertexShader" Height="16" HorizontalAlignment="Left" Margin="79,150,0,0" Name="checkBoxForceSoftwareVertexShader" VerticalAlignment="Top" />
        <CheckBox Content="No preshader" Height="16" HorizontalAlignment="Left" Margin="245,75,0,0" Name="checkBoxNoPreshader" VerticalAlignment="Top" />
        <CheckBox Content="Optimization level 0" Height="16" HorizontalAlignment="Left" Margin="80,172,0,0" Name="checkBoxOptimizationLevel0" VerticalAlignment="Top" />
        <CheckBox Content="Optimization level 1" Height="16" HorizontalAlignment="Left" Margin="80,187,0,0" Name="checkBoxOptimizationLevel1" VerticalAlignment="Top" IsChecked="True" IsEnabled="False" IsThreeState="False" />
        <CheckBox Content="Optimization level 2" Height="16" HorizontalAlignment="Left" Margin="80,202,0,0" Name="checkBoxOptimizationLevel2" VerticalAlignment="Top" />
        <CheckBox Content="Optimization level 3" Height="16" HorizontalAlignment="Left" Margin="80,217,0,0" Name="checkBoxOptimizationLevel3" VerticalAlignment="Top" />
        <CheckBox Content="Pack matrix col. major" Height="16" HorizontalAlignment="Left" Margin="245,90,0,0" Name="checkBoxPackMatrixColumnMajor" VerticalAlignment="Top" />
        <CheckBox Content="Pack matrix row major" Height="16" HorizontalAlignment="Left" Margin="245,105,0,0" Name="checkBoxPackMatrixRowMajor" VerticalAlignment="Top" />
        <CheckBox Content="Partial precision" Height="16" HorizontalAlignment="Left" Margin="245,120,0,0" Name="checkBoxPartialPrecision" VerticalAlignment="Top" />
        <CheckBox Content="Prefer flow control" Height="16" HorizontalAlignment="Left" Margin="245,135,0,0" Name="checkBoxPreferFlowControl" VerticalAlignment="Top" />
        <CheckBox Content="Skip optimization" Height="16" HorizontalAlignment="Left" Margin="245,187,0,0" Name="checkBoxSkipOptimization" VerticalAlignment="Top" />
        <CheckBox Content="Skip validation" Height="16" HorizontalAlignment="Left" Margin="245,202,0,0" Name="checkBoxSkipValidation" VerticalAlignment="Top" />
        <CheckBox Content="Warnings are errors" Height="16" HorizontalAlignment="Left" Margin="245,217,0,0" Name="checkBoxWarningsAreErrors" VerticalAlignment="Top" />
        <Label Content="Effect flags:" Height="28" HorizontalAlignment="Left" Margin="1,237,0,0" Name="label5" VerticalAlignment="Top" />
        <CheckBox Content="Allow slow operations" Height="16" HorizontalAlignment="Left" Margin="80,244,0,0" Name="checkBoxAllowSlowOperations" VerticalAlignment="Top" />
        <CheckBox Content="Is child effect" Height="16" HorizontalAlignment="Left" Margin="80,259,0,0" Name="checkBoxChildEffect" VerticalAlignment="Top" />
        <CheckBox Content="Single threaded" Height="16" HorizontalAlignment="Left" Margin="80,274,0,0" Name="checkBoxSingleThreaded" VerticalAlignment="Top" />
        <Label Content="* these flags are bitcombinations, some flags may trigger other flags" Height="28" HorizontalAlignment="Left" Margin="1,290,0,0" Name="label6" VerticalAlignment="Top" Width="399" FontWeight="Bold" />
        <Button Content="normalize flags *" Height="23" Margin="245,244,34,0" Name="button1" VerticalAlignment="Top" Click="checkBoxAvoidFlowControl_Click" />
    </Grid>
</UserControl>
